/*
 * The class that represents a proposal.
 */

package org.parademo.equations.base;

import java.util.Date;
import java.util.Vector;

/**
 *
 * @author Ajit Skanda Kumaraswamy.
 */
public class Proposal {

    /**
     * This represents the propsalID.
     */
    private long contentID;

    /**
     * The user ID of the creator.
     */
    private long creatorId;

    /**
     * The list of users who have voted on this proposal.
     */
    private Vector<Long> voters;

    /**
     * The total positive weight on the proposal.
     */
    private double positiveAggregatedWeight;

    /**
     * The total negative weight on the proposal.
     */
    private double negativeAggregatedWeight;

    /**
     * The latest updated time for the aggregated weights.
     */
    private Date latestUpdatedTime;

    /**
     * The set of votes for the given proposal.
     */
    private Vector<Vote> votes;

    /**
     * @return the contentID
     */
    public long getContentID() {
        return contentID;
    }

    /**
     * @param contentID the contentID to set
     */
    public void setContentID(long contentID) {
        this.contentID = contentID;
    }

    /**
     * @return the positiveAggregatedWeight
     */
    public double getPositiveAggregatedWeight() {
        return positiveAggregatedWeight;
    }

    /**
     * @param positiveAggregatedWeight the positiveAggregatedWeight to set
     */
    public void setPositiveAggregatedWeight(double positiveAggregatedWeight) {
        this.positiveAggregatedWeight = positiveAggregatedWeight;
    }

    /**
     * @return the negativeAggregatedWeight
     */
    public double getNegativeAggregatedWeight() {
        return negativeAggregatedWeight;
    }

    /**
     * @param negativeAggregatedWeight the negativeAggregatedWeight to set
     */
    public void setNegativeAggregatedWeight(double negativeAggregatedWeight) {
        this.negativeAggregatedWeight = negativeAggregatedWeight;
    }

    /**
     * @return the latestUpdatedTime
     */
    public Date getLatestUpdatedTime() {
        return latestUpdatedTime;
    }

    /**
     * @param latestUpdatedTime the latestUpdatedTime to set
     */
    public void setLatestUpdatedTime(Date latestUpdatedTime) {
        this.latestUpdatedTime = latestUpdatedTime;
    }

    /**
     * @return the creatorId
     */
    public long getCreatorId() {
        return creatorId;
    }

    /**
     * @param creatorId the creatorId to set
     */
    public void setCreatorId(long creatorId) {
        this.creatorId = creatorId;
    }

    /**
     * @return the voters
     */
    public Vector<Long> getVoters() {
        return voters;
    }

    /**
     * @param voters the voters to set
     */
    public void setVoters(Vector<Long> voters) {
        this.voters = voters;
    }

    /**
     * @return the votes
     */
    public Vector<Vote> getVotes() {
        return votes;
    }

    /**
     * @param votes the votes to set
     */
    public void setVotes(Vector<Vote> votes) {
        this.votes = votes;
    }


}
